using System;
using System.Collections.Generic;
using System.ComponentModel.DataAnnotations;

namespace ERP.EquipmentManage.Dtos
{
    /// <summary>
    /// 查询设备点检保养项目DTO
    /// </summary>
    public class GetDvsubjectInputDto
    {
        /// <summary>
        /// 项目编码
        /// </summary>
        public string? Subcode { get; set; }

        /// <summary>
        /// 项目名称
        /// </summary>
        public string? Subname { get; set; }

        /// <summary>
        /// 项目类型
        /// </summary>
        public string? Subtype { get; set; }

        /// <summary>
        /// 当前页码
        /// </summary>
        public int PageIndex { get; set; } = 1;

        /// <summary>
        /// 每页大小
        /// </summary>
        public int PageSize { get; set; } = 10;
    }

    /// <summary>
    /// 删除设备点检保养项目请求DTO
    /// </summary>
    public class DeleteDvsubjectRequestDto
    {
        /// <summary>
        /// 要删除的ID列表
        /// </summary>
        public List<int> Ids { get; set; } = new List<int>();
    }

    /// <summary>
    /// 添加设备点检项目到维护计划请求DTO
    /// </summary>
    public class AddDvsubjectToPlanRequestDto
    {
        /// <summary>
        /// 维护计划ID
        /// </summary>
        public int PlanId { get; set; }

        /// <summary>
        /// 设备点检项目ID
        /// </summary>
        public int DvsubjectId { get; set; }
    }

    /// <summary>
    /// 保存计划设备点检项目列表请求DTO
    /// </summary>
    public class SavePlanDvsubjectsRequestDto
    {
        /// <summary>
        /// 计划编码
        /// </summary>
        public string PlanCode { get; set; }

        /// <summary>
        /// 设备点检项目ID列表
        /// </summary>
        public List<int> DvsubjectIds { get; set; } = new List<int>();
    }
} 